仮想時間軸を使用したカムドライブの制御
を参照してください PLCopenMulti.project
のインストールディレクトリにあるサンプルプロジェクト CODESYS 下 ..\CODESYS SoftMotion\Examples
。
この例は、リニアドライブに周期カムを実装する方法を示しています。この例では、タペット機能の使用方法も示しています。
名前の付いたカムを挿入します
Example
下のデバイスツリーで 応用。エディターでカムを開きます。でタペットを定義します タペット タブ。
NS:
8.0
ポジティブパス:
Invert
ネガティブパス:
Invert
名前の付いた仮想ドライブを挿入します
Drive
下のデバイスツリーで SoftMotion一般軸プール。この軸には、軸タイプを選択します モジュロ モジュロ値が360
。名前の付いた別の仮想ドライブを挿入します
Virtual
。この軸には、 モジュロ モジュロ値が10
。作成する MOTION_PRG CFCのプログラム。
PROGRAM MOTION_PRG VAR power1, power2: MC_Power; TableSelect: MC_CamTableSelect; CamIn: MC_CamIn; Tappet: SMC_GetTappetValue; MoveVirtual: MC_MoveVelocity; END_VAR
ボックス要素を挿入し、変数を割り当てます
power1
それに。ボックス要素は、スイッチをオンにするために使用されますDrive
。次のように入力を構成します。
軸:
Drive
有効:
TRUE
bRegulatorOn:
TRUE
bDriveStart
TRUE
ボックス要素を挿入し、変数を割り当てます
power2
それに。ボックス要素は、スイッチをオンにするために使用されますVirtual
ドライブ。次のように入力を構成します。
軸:
Virtual
有効:
TRUE
bRegulatorOn:
TRUE
bDriveStart
TRUE
ボックス要素を挿入し、変数を割り当てます
MoveVirtual
それに。ボックス要素は、仮想マスターを移動するために使用されます。次のように入力を構成します。
軸:
Virtual
実行する:
power2.Status
速度:
2
加速度
10
減速
10
方向
positive
ボックス要素を挿入し、変数を割り当てます
TableSelect
それに。ボックス要素は、カムを選択するために使用されます。次のように入力を構成します。
主人:
Virtual
奴隷:
Drive
CamTable:
Example
実行する
TRUE
定期的
TRUE
MasterAbsolute
TRUE
SlaveAbsolute
TRUE
ボックス要素を挿入し、変数を割り当てます
CamIn
それに。ボックス要素は、選択したカムプレートを実装します。次のように入力を構成します。
主人:
Virtual
奴隷:
Drive
実行する
power1.Status
MasterOffset:
0
SlaveOffset:
0
MasterScaling:
1
SlaveScaling:
1
StartMode:
absolute
CamTableID:
TableSelect.CamTableID
VelocityDiff:
1
加速度:
1
減速:
1
TappetHysteresis:
1
ボックス要素を挿入し、変数を割り当てます
Tappet
それに。ボックス要素は、カムスイッチの設定をチェックします。次のように入力を構成します。
タペット:
CamIn.Tappets
iID:
1
bInitValue
FALSE
bSetInitValueAtReset:
FALSE
タペットは、反転タペットとして定義されています。このため、その値は10秒ごとに変更されます。
サンプルプロジェクトは、個々の機能ブロックと軸の位置を確認するための視覚化を提供します。
の呼び出しを追加します
MOTION_PRG
タスクへのプログラム 主な任務。プロジェクトをコントローラーにダウンロードして開始します。
詳細については、以下を参照してください。